上一篇介紹了 Pandas 和 Series 物件的一些基本操作,接下來就接著繼續介紹吧
print('guitar' in instrument)
print('cajon' in instrument)
輸出結果
True
False
instrument.where(instrument > 3) #Series.where(條件, 不滿足的回傳值,預設為NaN)
輸出結果
guitar NaN
bass NaN
keyboard 5.0
violin 6.0
dtype: float64
指定不滿足條件的回傳值
instrument.where(instrument > 3, '小於等於3')
輸出結果
guitar 小於等於3
bass 小於等於3
keyboard 5
violin 6
dtype: object
為了示範方便,我們先隨機將兩個 index 的值設為缺失值(NaN)
instrument['guitar'] = pd.NA
instrument['keyboard'] = pd.NA
print(instrument)
輸出結果
guitar NaN
bass 3.0
keyboard NaN
violin 6.0
dtype: float64
instrument.isna()
輸出結果
guitar True
bass False
keyboard True
violin False
dtype: bool
instrument.notna()
輸出結果
guitar False
bass True
keyboard False
violin True
dtype: bool
instrument.fillna('空值') #Series.fillna('想填的數字或字串')
輸出結果
guitar 空值
bass 3.0
keyboard 空值
violin 6.0
dtype: object
instrument.dropna()
輸出結果
bass 3.0
violin 6.0
dtype: float64
基本的 Series 操作就大概介紹到這邊,需要請讀者注意的是,有些函數是只會回傳結果,不會改變原本的物件,有些函數或操作會直接更改原本物件的內容,但 Pandas 的函數通常不會修改原物件,僅會回傳結果而已,確保資料不會有不當修正。
下一篇繼續介紹 Pandas 的另一個資料類型,DataFrame。